As it is known by the man skilled in the art, in a fixed P2P environment (or network), communication equipments (or peers) meet according to a simple homogeneous and memoryless process, as if they follow uncoordinated mobility, and have a dedicated buffer (or cache memory) which can be filled with content items (or files) that could be requested later by other peers. The demands (or requests) for different content items arise according to a stationary regime that can follow an arbitrary popularity distribution.
In contrast with traditional wired P2P networks, in wireless P2P networks contents are shared through opportunistic contacts. Peers store, in a local cache memory, contents they download when they are connected to a wireless network, and share them with other users when they meet them in an opportunistic manner, for instance within short range radio transmission (e.g. Bluetooth or IEEE 802.11). The storage capacity of wireless peers being limited, identifying which content a peer should store in its local cache memory in its interest but also in the interest of the other peers is an important problem.
For instance, solutions have been proposed to take into consideration the fact that sharing allows peers to access to content even when they are not within the infrastructure's coverage but also can assist the distribution of content and reduce the overall load on the infrastructure by utilizing the bandwidth available during opportunistic contacts. These solutions extend the reach of the dedicated service infrastructure while also improving its scalability. As such, they are efficient for the distribution of contents when access to the infrastructure is intermittent as well as when the downlink bandwidth available for content distribution is limited. But these solutions have an important drawback which is the delay. Indeed a peer can retrieve a content only when it has access to the infrastructure or when it encounters another peer storing it. So, the content shared should be delay-tolerant, in the sense that prompt delivery is not a strict requirement.
Given that mobile devices have limited storage capacity, an important challenge in the content sharing systems is determination of peer's caching policies which characterize the contents they should retrieve and store when accessing the infrastructure. In general, peers should store content that is likely to be of use either to themselves or to other peers they encounter. From a system-wide perspective, a natural goal when selecting such policies is to minimize delay: the contents stored at different peers should be chosen so that the average delay for retrieving requested contents is minimized, for instance.
Addressing this problem in the context of a wireless infrastructure is challenging for several reasons. The most important reason is heterogeneity. Indeed, wireless infrastructure resources may vary across peers, and therefore peers may have different storage capacities and may access the infrastructure at different rates. Moreover, peers may not value content in the same way, and therefore they may not necessarily be interested in the same contents, and might be more or less sensitive to finding them quickly. More, peers might follow diverse mobility patterns, and therefore they may have different opportunities to share their cached contents and to retrieve contents from other peers. These three sources of heterogeneity (access to resources, user preferences and mobility) play an important role in determining what contents a peer should store. Heterogeneity implies that caching policies intended for minimizing delays may vary considerably among peers.
An additional challenge arises from the fact that at least two of the above parameters, namely user preferences and mobility, may not be a priori known. In this sense, any mechanism for determining a peers caching policy cannot readily access this information.
Another challenge introduced by determination of caching policies is the need for decentralization. Indeed, as important parameters are not a priori known, determining caching policies in a centralized manner requires collecting data from users, such as mobility or content access traces, and such a data collection may not scale. Moreover, as in wired peer-to-peer infrastructures, wireless peers may wish to cooperate and share downloaded content in the absence of any central authority, due to security, “single point of failure” or privacy concerns, for instance.